package o2o.dao.VO.order;

import lombok.Data;
import lombok.experimental.Accessors;

//订单商品
@Data
@Accessors(chain = true)
public class OrderGoodsVO {

    private Long id; // 标识
    private String orderNo; // 订单编号
    private long shopId; //店铺Id
    private long goodsId; //商品Id
    private Long categoryId;    // 商品分类Id
    private Long upc; //商品统一编码（条形码）
    private Long realGoodsId; //真实商品ID（等我5分钟，商家抢单，故提交的商品ID不准确）
    private Long goodsSpecsId; // 商品规格id
    private double goodsPrice = 0; //商品购买价格
    private Double originalGoodsPrice = 0d; // 商品原价
    private int totalCount = 0; //总个数
    private double totalPrice = 0; //总金额
    private Double weight = 0.0d; // 商品重量
    private Double totalWeight = 0.0d; // 商品总重量
    private Integer isFreeGood = 0;     // 是不是免单商品
    private Integer isZhekou; // 是否折扣商品  1折扣 0非折扣
    private Integer usedZhekou; // 是否使用了折扣  1使用了 0未使用
    private Long totalExcIntegral; // 所需积分
    private Double packetPrice; //餐盒费
    private Double totalPacketPrice; //餐盒费总价
    private Double totalMoney; //含打包费总价
    private Integer isShareGood;
    private Double sharerShareRate;    //  分享者分成比例
    private String expiryTimes;             // 有效期至
    // 部分退款信息
    private int backTotalCount; //  总的已退款数量
    private String createUser; // 创建者
    private Long createTime; // 创建日期

    private String name; // 商品名称
    private String nameLang;// 商品名多语言
    private String descs; // 商品简介
    private String imageUrl; // 商品相关图片
    private String imageUrlB; // 商品相关图片--大的

    private String goodsAttrVals; // 商品属性值
    private Integer canExcIntegral; // 是否可以积分兑换
    private Long excIntegral;     // 所需积分


    //    private double price; //商品价格
//    private double originalPrice; //原价

    private String specs;//商品规格名称

    // 商品税率 create by yangtk 2018/10/20
    private Integer goodTaxRate; //

    public Double getWeight() {
        return weight;
    }

    public OrderGoodsVO setWeight(Double weight) {
        this.weight = weight;
        return this;
    }

    public Double getTotalWeight() {
        return totalWeight;
    }

    public OrderGoodsVO setTotalWeight(Double totalWeight) {
        this.totalWeight = totalWeight;
        return this;
    }

    public String getNameLang() {
        return nameLang;
    }

    public OrderGoodsVO setNameLang(String nameLang) {
        this.nameLang = nameLang;
        return this;
    }

    public Integer getCanExcIntegral() {
        return canExcIntegral;
    }

    public OrderGoodsVO setCanExcIntegral(Integer canExcIntegral) {
        this.canExcIntegral = canExcIntegral;
        return this;
    }

    public Long getExcIntegral() {
        return excIntegral;
    }

    public OrderGoodsVO setExcIntegral(Long excIntegral) {
        this.excIntegral = excIntegral;
        return this;
    }


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public long getShopId() {
        return shopId;
    }

    public void setShopId(long shopId) {
        this.shopId = shopId;
    }

    public long getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(long goodsId) {
        this.goodsId = goodsId;
    }

    public Long getGoodsSpecsId() {
        return goodsSpecsId;
    }

    public void setGoodsSpecsId(Long goodsSpecsId) {
        this.goodsSpecsId = goodsSpecsId;
    }

    public double getGoodsPrice() {
        return goodsPrice;
    }

    public void setGoodsPrice(double goodsPrice) {
        this.goodsPrice = goodsPrice;
    }

    public int getTotalCount() {
        return totalCount;
    }

    public void setTotalCount(int totalCount) {
        this.totalCount = totalCount;
    }

    public double getTotalPrice() {
        return totalPrice;
    }

    public void setTotalPrice(double totalPrice) {
        this.totalPrice = totalPrice;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public String getImageUrlB() {
        return imageUrlB;
    }

    public void setImageUrlB(String imageUrlB) {
        this.imageUrlB = imageUrlB;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescs() {
        return descs;
    }

    public void setDescs(String descs) {
        this.descs = descs;
    }

    public String getSpecs() {
        return specs;
    }

    public void setSpecs(String specs) {
        this.specs = specs;
    }

    public Long getUpc() {
        return upc;
    }

    public void setUpc(Long upc) {
        this.upc = upc;
    }

    public Long getRealGoodsId() {
        return realGoodsId;
    }

    public void setRealGoodsId(Long realGoodsId) {
        this.realGoodsId = realGoodsId;
    }

    public Double getPacketPrice() {
        return packetPrice;
    }

    public void setPacketPrice(Double packetPrice) {
        this.packetPrice = packetPrice;
    }

    public Double getTotalPacketPrice() {
        return totalPacketPrice;
    }

    public void setTotalPacketPrice(Double totalPacketPrice) {
        this.totalPacketPrice = totalPacketPrice;
    }

    public Double getTotalMoney() {
        return totalMoney;
    }

    public void setTotalMoney(Double totalMoney) {
        this.totalMoney = totalMoney;
    }

    public Integer getIsZhekou() {
        return isZhekou;
    }

    public void setIsZhekou(Integer isZhekou) {
        this.isZhekou = isZhekou;
    }

    public Long getTotalExcIntegral() {
        return totalExcIntegral;
    }

    public OrderGoodsVO setTotalExcIntegral(Long totalExcIntegral) {
        this.totalExcIntegral = totalExcIntegral;
        return this;
    }

    public String getGoodsAttrVals() {
        return goodsAttrVals;
    }

    public void setGoodsAttrVals(String goodsAttrVals) {
        this.goodsAttrVals = goodsAttrVals;
    }


    public Integer getGoodTaxRate() {
        return goodTaxRate;
    }

    public void setGoodTaxRate(Integer goodTaxRate) {
        this.goodTaxRate = goodTaxRate;
    }
}
